.sl-markdown-content strong:not(:where(.not-content *)) {
  font-weight: 600;
}
/**
 * Paragraphs
 */
.sl-markdown-content :not(a, strong, em, del, span, input, code)
  + :not(a, strong, em, del, span, input, code, :where(.not-content *)) {
  margin-top: var(--paragraph-spacing);
}
/* Space around asides and code blocks */
.sl-markdown-content :not(a, strong, em, del, span, input, code)
  + :is(.starlight-aside, .expressive-code) {
  margin-top: calc(var(--paragraph-spacing) + 0.4375rem);
}
.sl-markdown-content :is(.starlight-aside, .expressive-code, table)
  + :not(a, strong, em, del, span, input, code, h1, h2, h3, h4, h5, h6, :where(.not-content *)) {
  margin-top: calc(var(--paragraph-spacing) + 0.5rem);
}
.sl-markdown-content :is(.starlight-aside, .expressive-code)
  + :is(.starlight-aside, .expressive-code) {
  margin-top: calc(var(--paragraph-spacing) + 1.125rem);
}
/* Space around sections */
.sl-markdown-content :not(h1, h2, h3, h4, h5, h6)
  + :is(h1, h2, h3, h4, h5, h6):not(:where(.not-content *)),
.sl-markdown-content :not(a, strong, em, del, span, input, code)
  + hr:not(:where(.not-content *)),
.sl-markdown-content hr:not(:where(.not-content *)) + :not(a, strong, em, del, span, input, code, :where(.not-content *))
{
  margin-top: calc(var(--paragraph-spacing) + 2rem);
}

/**
 * Headings
 */
.sl-markdown-content h2:not(:where(.not-content *)),
.sl-markdown-content h3:not(:where(.not-content *)) {
  font-family: var(--__sl-font-headings);
  letter-spacing: -1px;
  font-weight: 500;
}
.sl-markdown-content h4:not(:where(.not-content *)),
.sl-markdown-content h5:not(:where(.not-content *)) {
  font-family: var(--__sl-font-headings);
  letter-spacing: -0.5px;
  font-weight: 500;
}

/**
 * Asides
 */
.starlight-aside {
  border: none;
  border-radius: var(--border-radius);
  padding: 0.9375rem 1rem 0.875rem;
}
.starlight-aside__title {
  font-family: var(--__sl-font-mono);
  text-transform: uppercase;
  font-size: var(--sl-text-code-sm);
  font-weight: 700;
  letter-spacing: 0.5px;
  gap: 0.4rem;
}
.starlight-aside__icon {
  font-size: 0.875rem;
  width: 0.8125rem;
  height: 0.8125rem;
  opacity: var(--icon-opacity);
}
.starlight-aside__title + .starlight-aside__content {
  margin-top: 0.75rem;
}
.sl-markdown-content .starlight-aside__content {
  font-size: var(--sl-text-code);
}
.sl-markdown-content .starlight-aside__content code:not(:where(.not-content *)) {
  background-color: transparent;
  font-size: var(--sl-text-code-sm);
}
.sl-markdown-content .starlight-aside a:not(:where(.not-content *)),
.sl-markdown-content .starlight-aside a:not(:where(.not-content *)):hover,
.sl-markdown-content .starlight-aside a:not(:where(.not-content *)) code,
.sl-markdown-content .starlight-aside a:not(:where(.not-content *)):hover code {
  color: var(--sl-color-white);
  text-decoration: underline;
}
.custom-aside-video .starlight-aside__title {
  font-weight: normal;
  font-family: var(--__sl-font);
  font-size: var(--sl-text-sm);
  text-transform: none;
  letter-spacing: 0;
  line-height: normal;
  gap: 0.5rem;
}
.custom-aside-video .starlight-aside__title a {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.custom-aside-video .starlight-aside__title a:hover {
  text-decoration: underline;
}
.custom-aside-video .starlight-aside__title a svg {
  opacity: 0.8;
}

/**
 * Blockquotes
 */
 .sl-markdown-content blockquote:not(:where(.not-content *)) {
  border-inline-start: 5px solid var(--divider-color);
  padding-inline-start: 1rem;
  font-size: var(--sl-text-h4);
  color: var(--color-text-secondary);
}

/**
 * Links
 */
.sl-markdown-content a:not(:where(.not-content *)),
.sl-markdown-content a:not(:where(.not-content *)) code {
  color: var(--sl-color-text-accent);
  text-underline-offset: 0.1875rem;
  text-decoration: none;
}
.sl-markdown-content a:hover:not(:where(.not-content *)) {
  color: var(--sl-color-text-accent);
  text-decoration: underline;
}

/**
 * Code blocks
 */
.sl-markdown-content .expressive-code .frame pre {
  border-radius: var(--border-radius);
}
.sl-markdown-content .expressive-code .frame pre code {
  font-size: var(--sl-text-sm);
}
/* Plain blocks */
.sl-markdown-content .expressive-code .frame:not(.has-title):not(.is-terminal) pre {
  border-color: var(--sl-color-border-code);
}
.sl-markdown-content .expressive-code .copy {
  inset-block-start: calc(var(--ec-brdWd) + var(--button-spacing) + 0.1rem);
}
.sl-markdown-content .expressive-code .copy .feedback {
  --tooltip-bg: var(--sl-color-gray-3);

  font-size: 0.75rem;
  padding: 0.125rem 0.5rem;
}
.sl-markdown-content .expressive-code .copy button {
  width: 2rem;
  height: 2rem;
  border-color: var(--sl-color-border-code);
}
/* Frames */
.sl-markdown-content .expressive-code .frame.has-title:not(.is-terminal) .header {
  background: var(--code-background);
  border-bottom: 1px solid var(--sl-color-border-code);
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.sl-markdown-content .expressive-code .frame.has-title:not(.is-terminal) .header:before {
  border-color: var(--sl-color-border-code);
}
.sl-markdown-content .expressive-code .frame.has-title:not(.is-terminal) .title {
  border-width: 1px;
  border-style: solid;
  font-size: var(--sl-text-sm);
  background: var(--code-background);
  border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-color: var(--sl-color-border-code) var(--sl-color-border-code) var(--ec-frm-edActTabIndTopCol);
}
.sl-markdown-content .expressive-code .frame.has-title:not(.is-terminal) .title:after {
  border: none;
}
.sl-markdown-content .expressive-code .frame.has-title pre {
  border-color: var(--sl-color-border-code);
}
/* Terminal */
.sl-markdown-content .expressive-code .frame.is-terminal .header {
  font-size: var(--sl-text-sm);
  font-weight: normal;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
  background: var(--code-background);
  border-color: var(--sl-color-border-code);
}
.sl-markdown-content .expressive-code .frame.is-terminal .header:after {
  border-color: var(--sl-color-border-code);
}
.sl-markdown-content .expressive-code .frame.is-terminal pre {
  border-color: var(--sl-color-border-code);
}
/* Code markers */
:root[data-theme='light'] .expressive-code .frame,
.expressive-code[data-theme='light'] .frame {
  --ec-tm-markBg: #00000011;
  --ec-tm-insBg: #90C87E72;
  --ec-tm-delBg: #FF9C8F7F;
}
:root[data-theme='dark'] .expressive-code .frame,
.expressive-code[data-theme='dark'] .frame {
  --ec-tm-markBg: #FFFFFF0F;
  --ec-tm-insBg: #1E561572;
  --ec-tm-delBg: #862D2766;
}
.sl-markdown-content .expressive-code .ec-line.mark > .code,
.sl-markdown-content .expressive-code .ec-line.ins > .code,
.sl-markdown-content .expressive-code .ec-line.del > .code {
  border-inline-start-color: transparent;
}
.sl-markdown-content .expressive-code .ec-line mark:before,
.sl-markdown-content .expressive-code .ec-line ins:before,
.sl-markdown-content .expressive-code .ec-line del:before {
  border-width: 0px;
}

/**
 * Inline code
 */
.sl-markdown-content code:not(:where(.not-content *)) {
  padding: 0;
  background: none;
  font-weight: 600;
  font-size: var(--sl-text-sm);
  color: var(--sl-color-white);
}
.sl-markdown-content strong code:not(:where(.not-content *)) {
  font-weight: 700;
}
.sl-markdown-content code:not(:where(.not-content *)):before,
.sl-markdown-content code:not(:where(.not-content *)):after {
  content: '`';
}

/**
 * Tabs
 */
.sl-markdown-content [role='tablist'] {
  border-color: var(--divider-color);
}
.sl-markdown-content .tab > [role='tab'] {
  font-weight: 600;
  color: var(--color-text-dimmed);
  border-color: var(--divider-color);
  text-transform: uppercase;
  font-family: var(--__sl-font-mono);
  letter-spacing: 0.5px;
  font-size: var(--sl-text-code-sm);
  padding-block-end: 0.375rem;
}
.sl-markdown-content .tab > [role='tab'][aria-selected='true'] {
  color: var(--sl-color-white);
  border-color: var(--sl-color-text-accent);
}

/**
 * Lists
 */
.sl-markdown-content ol:not(:where(.not-content *)),
.sl-markdown-content ul:not(:where(.not-content *)) {
  list-style-type: none;
  padding-left: 0;
}
.sl-markdown-content ol:not(:where(.not-content *)) {
  counter-reset: listitem;
}
.sl-markdown-content ol:not(:where(.not-content *)) > li,
.sl-markdown-content ul:not(:where(.not-content *)) > li {
  position: relative;
  padding-left: 1.75rem;
}
.sl-markdown-content li:not(:where(.not-content *)) > ol,
.sl-markdown-content li:not(:where(.not-content *)) > ul,
.sl-markdown-content li + li:not(:where(.not-content *)) {
  margin-top: 0.625rem;
}
.sl-markdown-content li > :last-child:not(li, ul, ol):not(a, strong, em, del, span, input, :where(.not-content *)) {
  margin-bottom: calc(var(--paragraph-spacing) + 0.5rem);
}
.sl-markdown-content ul:not(:where(.not-content *)) > li:before {
  content: "";
  position: absolute;
  left: 2px;
  top: 13px;
  width: 12px;
  height: 2px;
  border-radius: 1px;
  background: var(--list-marker-color);
}
.sl-markdown-content ol:not(:where(.not-content *)) > li:before {
  counter-increment: listitem;
  content: counter(listitem);
  position: absolute;
  font-size: 0.625rem;
  line-height: 17px;
  text-align: center;
  height: 18px;
  min-width: 18px;
  padding-inline: 4px;
  left: 0;
  top: 4px;
  border-radius: 3px;
  color: var(--color-text-secondary);
  font-family: var(--__sl-font-mono);
  border: 1px solid var(--divider-color);
}

/**
 * Tables
 */
.sl-markdown-content thead th:not(:where(.not-content *)) {
  border-bottom: 2px solid var(--divider-color);
}
.sl-markdown-content :is(th):not(:where(.not-content *)) {
  font-weight: 600;
  border-color: var(--divider-color);
  text-transform: uppercase;
  font-family: var(--__sl-font-mono);
  letter-spacing: 0.5px;
  font-size: var(--sl-text-code-sm);
  border: none;
  text-align: left;
  padding-block-start: 0;
}
.sl-markdown-content tbody > tr td:not(:where(.not-content *)) {
  border-bottom: 1px solid var(--divider-color);
  padding-block: 0.5rem;
}
.sl-markdown-content tr:nth-child(2n):not(:where(.not-content *)) {
  background-color: transparent;
}

/**
 * Centered images
 */
.sl-markdown-content > :is(img, picture, video, canvas, svg, iframe):not(:where(.not-content *)) {
  margin-left: auto;
  margin-right: auto;
}
